BEGIN SCRIPT Stuetzen
-- sonar sample-06 / drop test on H-section
-- created: 28/11/2016 L&G_Software
-- all variables in [cm g us]-system
-- section type: H-section HEA160 (GS-6152.34)


-- a supergroup is set temporarely to move around all objects united
SET VALUE (NEW_SUPERGROUP_NR) -- create a new supergroup number
SET VALUE (MODEL_SCALE, SCREEN_WORLD = 1.0, REAL_WORLD = 100.0)

-------------------------------------------------------------------
-- H-SECTION
-------------------------------------------------------------------
-- Syntax:
-- 1      2       3 4       5  6  7  8  9  10  11  12  13  14 15 16  17  18      19             20           21
-- CREATE PROFILE ( TYPE_H, h, b, s, t, L, nx, ny, nz, ro, E, G, C1, C2, colIdx, iActMethodIdx, iActModeIdx, matIdx )

-- create one section
CREATE PROFILE (TYPE_H, 15.2, 16.0, 0.6, 0.9, 446, 5, 6, 100, 7.8, 2.1, 0.7, 1.0, 1.0, 22, 0, 0, 0)

-- the function automatically creates a common group number for all cuboids.
-- add the group (H-section) to the supergroup
SET GROUP_PROPERTY(LAST_GROUP_NR, SUPERGROUP_NR, LAST_SUPERGROUP_NR)

-------------------------------------------------------------------
-- STRENGTH (HEA160)
-------------------------------------------------------------------
-- Achtung die Festigkeit bezieht sich auf den einzelnen Link
-- Profilquerschnitt = 3880 mm2
-- Anzahl Elemente in Lngsrichtung = 100
-- Streckgrenze (Dehngrenze) = 185-355 N/mm2
-- Zugfestigkeit = 310-630 N/mm2
-- Bruchdehnung = 18-26 %

SET GROUP_PROPERTY (LAST_GROUP_NR, DENSITY, 7.8)
SET GROUP_PROPERTY (LAST_GROUP_NR, C_LINK, E_MODUL, 2.1, 1.0) -- 210 kN/mm2 = 210 GPa
SET GROUP_PROPERTY (LAST_GROUP_NR, C_LINK, STRENGTH_CALC, SPECIFIC, 205.0E-5, 1.0) -- 205 N/mm2
SET GROUP_PROPERTY (LAST_GROUP_NR, C_LINK, STRENGTH_ULTIMATE, SPECIFIC, 410.0E-5, 1.0) -- 410 N/mm2
SET GROUP_PROPERTY (LAST_GROUP_NR, C_LINK, OVERLOAD_ACTION, BREAKUP) -- Bruch zulassen
SET GROUP_PROPERTY (LAST_GROUP_NR, C_LINK, STRAIN_LIMIT, PERCENT, 22.0) -- 22%
SET GROUP_PROPERTY (LAST_GROUP_NR, C_LINK, MATERIAL_MODEL, 5) -- linear elastic + linear isotropic hardening
SET GROUP_PROPERTY (LAST_GROUP_NR, YIELD_MODEL, 1) -- 1:= 001_RANKINE
SET GROUP_PROPERTY (LAST_GROUP_NR, INTERACT_MODE, ACTIVE)
SET GROUP_PROPERTY (LAST_GROUP_NR, C_INTERACT_LIN, 1.0)
SET GROUP_PROPERTY (LAST_GROUP_NR, C_INTERACT_QUAD, 1.0)

--------------------------------------------------------------------
-- ROUND STRAP / DATA FILE
--------------------------------------------------------------------
-- The lines and arcs in this section were read out from a data file created by a 2D drawing program.
-- Instead of loading the file directly in the macro we explicitely create all elements here.
-- We do that to be independent from external files.

-- LINE
-- 2.500000e+01, 6.550000e+00
-- 2.500000e+01, -6.550000e+00
-- LINE
-- 2.500000e+01, -6.550000e+00
-- 1.700000e+01, -6.550000e+00
-- LINE
-- 1.700000e+01, -6.550000e+00
-- 1.700000e+01, -8.350000e+00
-- LINE
-- 1.700000e+01, -8.350000e+00
-- -9.413740e-01, -4.910582e+00
-- ARC
-- 0.000000e+00, 0.000000e+00
-- -9.413740e-01, 4.910582e+00
-- -9.413740e-01, -4.910582e+00
-- LINE
-- -9.413740e-01, 4.910582e+00
-- 1.700000e+01, 8.350000e+00
-- LINE
-- 1.700000e+01, 8.350000e+00
-- 1.700000e+01, 6.550000e+00
-- LINE
-- 1.700000e+01, 6.550000e+00
-- 2.500000e+01, 6.550000e+00

--------------------------------------------------------------------
-- ROUND STRAP / ELEMENTS
--------------------------------------------------------------------
-- drawing closed contour with a hole -> rawdata
CREATE ELEMENT (E1, ARC, 0, 0, 0, -9.413740e-01, 4.910582e+00, 0, -9.413740e-01, -4.910582e+00, 0, 1)
CREATE ELEMENT (E2, LINE, -9.413740e-01, -4.910582e+00, 0, 17.0, -8.35, 0)
CREATE ELEMENT (E3, LINE, 17.0, -8.35, 0, 17.0, -6.55, 0)
CREATE ELEMENT (E4, LINE, 17.0, -6.55, 0, 25.0, -6.55, 0)
CREATE ELEMENT (E5, LINE, 25.0, -6.55, 0, 25.0, 6.55, 0)
CREATE ELEMENT (E6, LINE, 25.0, 6.55, 0, 17.0, 6.55, 0)
CREATE ELEMENT (E7, LINE, 17.0, 6.55, 0, 17.0, 8.35, 0)
CREATE ELEMENT (E8, LINE, 17.0, 8.35, 0, -9.413740e-01, 4.910582e+00, 0)
CREATE ELEMENT (E9, CIRCLE, 0, 0, 0, 0, 0, 1.0, 1.5)

--------------------------------------------------------------------
-- ROUND STRAP / CONTOUR / OBJECT
--------------------------------------------------------------------
-- transform rawdata to an object (extruded line-arc-contour)
GROUP ELEMENTS (ALL) -- 1st: connect elements to a contour
DESELECT ALL
CREATE CONTOUR_LINE_ARC (C1, E1)
SELECT CONTOUR(C1) -- select the contour..
SELECT ELEMENT(E9) -- and the hole

-- we keep the reference 'O1' reserved for this object trough the macro
CREATE OBJECT(O1, PRISM_LINE_ARC, SELECTION, EXTRUSION, 3.0) -- with the contour -> create an object

-- we temporarely add the object to the supergroup to move it around along with the supergroup
SET PROPERTY(O1, SUPERGROUP_NR, LAST_SUPERGROUP_NR) -- add object to supergroup

ROTATE OBJECT (O1, 0, 0, 0, 0, 1.570796327, 0) -- move object to position
TRANSLATE OBJECT(O1, RELATIVE, 6.2, 7.6, -17)
SET PROPERTY (O1, COLOR_STD, 21) -- grey3
SET PROPERTY (O1, INTERACT_MODE, ACTIVE)
SET PROPERTY (O1, DENSITY, 7.8) -- [g/cm2]
SET PROPERTY (O1, C_INTERACT_LIN, 1.0)
SET PROPERTY (O1, C_INTERACT_QUAD, 1.0)


--------------------------------------------------------------------
-- ROUND STRAP / LINKS
--------------------------------------------------------------------
-- the H-section is built with a matrix of cuboids
-- we select some cuboids at the intended link positions..
-- and assign them a given reference number (O2..O5)
--
-- to connect the strap with the H-section, we set more links than needed.
-- we set a link in every row of elements of the H-section to imitate a
-- continous connection between the parts like a weld.

DESELECT ALL
SELECT OBJECT (POINT, 8.0, 13.7, 0.3)
SET VALUE (O3 = SELECTION)

DESELECT ALL
SELECT OBJECT (POINT, 8.0, 1.5, 0.3)
SET VALUE (O4 = SELECTION)

DESELECT ALL
SELECT OBJECT (POINT, 8.0, 13.7, 7.7)
SET VALUE (O5 = SELECTION)

DESELECT ALL
SELECT OBJECT (POINT, 8.0, 1.5, 7.7)
SET VALUE (O6 = SELECTION)

-- we link (Lasche with H-section(cuboids))
CREATE LINK (K1, NORMAL, O1, O3, 8.0, 13.7, 0.3)
CREATE LINK (K2, NORMAL, O1, O4, 8.0, 1.5, 0.3)
CREATE LINK (K3, NORMAL, O1, O5, 8.0, 13.7, 7.7)
CREATE LINK (K4, NORMAL, O1, O6, 8.0, 1.5, 7.7)
-- and set the Link-Const. of the new Links
SET PROPERTY (K1, C_LINK, 1.0)
SET PROPERTY (K2, C_LINK, 1.0)
SET PROPERTY (K3, C_LINK, 1.0)
SET PROPERTY (K4, C_LINK, 1.0)

-- more Links (weld)
DESELECT ALL
SELECT OBJECT (POINT, 8.0, 3.94, 0.3)
SET VALUE (O3 = SELECTION)
CREATE LINK (K1, NORMAL, O1, O3, 8.0, 3.94, 0.3)
SET PROPERTY (K1, C_LINK, 1.0)

DESELECT ALL
SELECT OBJECT (POINT, 8.0, 6.38, 0.3)
SET VALUE (O3 = SELECTION)
CREATE LINK (K1, NORMAL, O1, O3, 8.0, 6.38, 0.3)
SET PROPERTY (K1, C_LINK, 1.0)

DESELECT ALL
SELECT OBJECT (POINT, 8.0, 8.82, 0.3)
SET VALUE (O3 = SELECTION)
CREATE LINK (K1, NORMAL, O1, O3, 8.0, 8.82, 0.3)
SET PROPERTY (K1, C_LINK, 1.0)

DESELECT ALL
SELECT OBJECT (POINT, 8.0, 11.26, 0.3)
SET VALUE (O3 = SELECTION)
CREATE LINK (K1, NORMAL, O1, O3, 8.0, 11.26, 0.3)
SET PROPERTY (K1, C_LINK, 1.0)

DESELECT ALL
SELECT OBJECT (POINT, 8.0, 3.94, 7.7)
SET VALUE (O3 = SELECTION)
CREATE LINK (K1, NORMAL, O1, O3, 8.0, 3.94, 7.7)
SET PROPERTY (K1, C_LINK, 1.0)

DESELECT ALL
SELECT OBJECT (POINT, 8.0, 6.38, 7.7)
SET VALUE (O3 = SELECTION)
CREATE LINK (K1, NORMAL, O1, O3, 8.0, 6.38, 7.7)
SET PROPERTY (K1, C_LINK, 1.0)

DESELECT ALL
SELECT OBJECT (POINT, 8.0, 8.82, 7.7)
SET VALUE (O3 = SELECTION)
CREATE LINK (K1, NORMAL, O1, O3, 8.0, 8.82, 7.7)
SET PROPERTY (K1, C_LINK, 1.0)

DESELECT ALL
SELECT OBJECT (POINT, 8.0, 11.26, 7.7)
SET VALUE (O3 = SELECTION)
CREATE LINK (K1, NORMAL, O1, O3, 8.0, 11.26, 7.7)
SET PROPERTY (K1, C_LINK, 1.0)

--------------------------------------------------------------------
-- RECTANGULAR STRAP / ELEMENTS
--------------------------------------------------------------------
-- same procedure for the rectangular strap
CREATE ELEMENT (E1, LINE, 0, -11.05, 0, 7.0, -11.05, 0)
CREATE ELEMENT (E2, LINE, 7.0, -11.05, 0, 7.0, -6.55, 0)
CREATE ELEMENT (E3, LINE, 7.0, -6.55, 0, 15.0, -6.55, 0)
CREATE ELEMENT (E4, LINE, 15.0, -6.55, 0, 15.0, 6.55, 0)
CREATE ELEMENT (E5, LINE, 15.0, 6.55, 0, 7.0, 6.55, 0)
CREATE ELEMENT (E6, LINE, 7.0, 6.55, 0, 7.0, 11.05, 0)
CREATE ELEMENT (E7, LINE, 7.0, 11.05, 0, 0, 11.05, 0)
CREATE ELEMENT (E8, LINE, 0, 11.05, 0, 0, -11.05, 0)

CREATE ELEMENT (E9, CIRCLE, 3.5, -7.55, 0, 0, 0, 1.0, 1.5)
CREATE ELEMENT (E10, CIRCLE, 3.5, 0, 0, 0, 0, 1.0, 1.5)
CREATE ELEMENT (E11, CIRCLE, 3.5, 7.55, 0, 0, 0, 1.0, 1.5)

--------------------------------------------------------------------
-- RECTANGULAR STRAP / CONTOUR / OBJECT
--------------------------------------------------------------------
GROUP ELEMENTS (ALL)
DESELECT ALL
CREATE CONTOUR_LINE_ARC (C1, E1)
SELECT CONTOUR(C1)
SELECT ELEMENT(E9)
SELECT ELEMENT(E10)
SELECT ELEMENT(E11)

-- we keep the reference 'O2' reserved for this object trough the macro
CREATE OBJECT(O2, PRISM_LINE_ARC, SELECTION, EXTRUSION, 2.0) -- thickness = 20mm

-- we temporarely add the object to the supergroup to move it around along with the supergroup
SET PROPERTY(O2, SUPERGROUP_NR, LAST_SUPERGROUP_NR)

ROTATE OBJECT (O2, 0, 0, 0, 0, -1.570796327, 0)
TRANSLATE OBJECT(O2, RELATIVE, 6.7, 7.6, 453.0)

SET PROPERTY (O2, COLOR_STD, 21)
SET PROPERTY (O2, INTERACT_MODE, ACTIVE)
SET PROPERTY (O2, DENSITY, 7.8)
SET PROPERTY (O2, C_INTERACT_LIN, 1.0)
SET PROPERTY (O2, C_INTERACT_QUAD, 1.0)

--------------------------------------------------------------------
-- RECTANGULAR STRAP / LINKS
--------------------------------------------------------------------
-- to connect the strap with the H-section, we set more links than needed.
-- we set a link in every row of elements of the H-section to imitate a
-- continous connection between the parts like a weld.

DESELECT ALL
SELECT OBJECT (POINT, 8.0, 13.7, 438.5)
SET VALUE (O3 = SELECTION)

DESELECT ALL
SELECT OBJECT (POINT, 8.0, 1.5, 438.5)
SET VALUE (O4 = SELECTION)

DESELECT ALL
SELECT OBJECT (POINT, 8.0, 13.7, 445.5)
SET VALUE (O5 = SELECTION)

DESELECT ALL
SELECT OBJECT (POINT, 8.0, 1.5, 445.5)
SET VALUE (O6 = SELECTION)

CREATE LINK (K1, NORMAL, O2, O3, 8.0, 13.7, 438.5)
CREATE LINK (K2, NORMAL, O2, O4, 8.0, 1.5, 438.5)
CREATE LINK (K3, NORMAL, O2, O5, 8.0, 13.7, 445.5)
CREATE LINK (K4, NORMAL, O2, O6, 8.0, 1.5, 445.5)

SET PROPERTY (K1, C_LINK, 1.0)
SET PROPERTY (K2, C_LINK, 1.0)
SET PROPERTY (K3, C_LINK, 1.0)
SET PROPERTY (K4, C_LINK, 1.0)

-- more Links (weld)
DESELECT ALL
SELECT OBJECT (POINT, 8.0, 3.94, 438.5)
SET VALUE (O3 = SELECTION)
CREATE LINK (K1, NORMAL, O2, O3, 8.0, 3.94, 438.5)
SET PROPERTY (K1, C_LINK, 1.0)

DESELECT ALL
SELECT OBJECT (POINT, 8.0, 6.38, 438.5)
SET VALUE (O3 = SELECTION)
CREATE LINK (K1, NORMAL, O2, O3, 8.0, 6.38, 438.5)
SET PROPERTY (K1, C_LINK, 1.0)

DESELECT ALL
SELECT OBJECT (POINT, 8.0, 8.82, 438.5)
SET VALUE (O3 = SELECTION)
CREATE LINK (K1, NORMAL, O2, O3, 8.0, 8.82, 438.5)
SET PROPERTY (K1, C_LINK, 1.0)

DESELECT ALL
SELECT OBJECT (POINT, 8.0, 11.26, 438.5)
SET VALUE (O3 = SELECTION)
CREATE LINK (K1, NORMAL, O2, O3, 8.0, 11.26, 438.5)
SET PROPERTY (K1, C_LINK, 1.0)

DESELECT ALL
SELECT OBJECT (POINT, 8.0, 3.94, 445.5)
SET VALUE (O3 = SELECTION)
CREATE LINK (K1, NORMAL, O2, O3, 8.0, 3.94, 445.5)
SET PROPERTY (K1, C_LINK, 1.0)

DESELECT ALL
SELECT OBJECT (POINT, 8.0, 6.38, 445.5)
SET VALUE (O3 = SELECTION)
CREATE LINK (K1, NORMAL, O2, O3, 8.0, 6.38, 445.5)
SET PROPERTY (K1, C_LINK, 1.0)

DESELECT ALL
SELECT OBJECT (POINT, 8.0, 8.82, 445.5)
SET VALUE (O3 = SELECTION)
CREATE LINK (K1, NORMAL, O2, O3, 8.0, 8.82, 445.5)
SET PROPERTY (K1, C_LINK, 1.0)

DESELECT ALL
SELECT OBJECT (POINT, 8.0, 11.26, 445.5)
SET VALUE (O3 = SELECTION)
CREATE LINK (K1, NORMAL, O2, O3, 8.0, 11.26, 445.5)
SET PROPERTY (K1, C_LINK, 1.0)

-------------------------------------------------------------------
-- POSITION
-------------------------------------------------------------------
-- the supergroup is moved (as a whole) to its final position
TRANSLATE OBJECTSUPERGROUP(LAST_SUPERGROUP_NR, RELATIVE, -6.2, -7.6, 17.0)
ROTATE OBJECTSUPERGROUP(O1, 0, 0, 0, 0.523598776, 0, 0)
TRANSLATE OBJECTSUPERGROUP(LAST_SUPERGROUP_NR, RELATIVE, K*1000.0, 1550.0, 0)

-- we give the supergroup a name
SET SUPERGROUP_PROPERTY (LAST_SUPERGROUP_NR, NAME, "Stuetze")

-- after reaching the final position we take obj.1 and obj.2 out of the supergroup
-- these objects must not be affected when changing material properties (H-section)
SET PROPERTY(O1, SUPERGROUP_NR, 0) -- remove objects from supergroup
SET PROPERTY(O2, SUPERGROUP_NR, 0)

-------------------------------------------------------------------
-- GLOBAL
-------------------------------------------------------------------
-- max. timestep
SET VALUE(TIMESTEP_MAX = 0.2) -- 0.2E-6s

-- set preferences
SET PREFERENCE (IACT_CYCLE_CALC_PERIOD, 100)

DESELECT ALL
-- end of script
